# 使用Python 3.11作为基础镜像
FROM python:3.11-slim

# 设置工作目录
WORKDIR /app

# 安装系统依赖
RUN apt-get update && apt-get install -y \
    gcc \
    g++ \
    curl \
    git \
    && rm -rf /var/lib/apt/lists/*

# 复制项目文件，除了被.dockerignore排除的文件
COPY . .



# 安装uv包管理器
RUN pip install uv

# 设置阿里云镜像源以提高下载速度
ENV UV_INDEX_URL=https://mirrors.aliyun.com/pypi/simple/

# 安装项目依赖，添加错误处理和详细输出
RUN uv sync --verbose || { echo "uv sync failed, trying with --no-cache"; uv sync --no-cache --verbose; }

# 暴露端口
EXPOSE 8000

# 设置环境变量
ENV PYTHONPATH=/app

# 启动命令
CMD ["uv", "run", "app/main.py"]